A C to Hardware/Software Compiler

نویسندگان

  • Kia Bazargan
  • Ryan Kastner
  • Seda Ogrenci Memik
  • Majid Sarrafzadeh
چکیده

Improvements in the FPGA technology have resulted in introduction of reconfigurable computing machines, where the hardware adapts itself to the running application to gain speedup. This paper presents a top-down compilation method, under development, for such systems. We compile a C program into hierarchical VHDL source files, and annotate them with the placement information of the hardware modules to be configured on the FPGA. Static scheduling combined with a fast, two-stage placement core reduces the compilation time of large programs to minutes.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Turning Java into Hardware: Caffinated Compiler Construction

This paper explores the design of a compiler for the Java programming language. Unlike many compilers, the target is hardware, not bytecodes or machine instructions. Java’s simplicity, object-orientation, and strong typing make it well suited to class-based hardware translation. It is also possible to leverage Java’s thread interfaces to model coarse-grain parallelism in hardware. The goal is t...

متن کامل

A Simple C to Verilog Compilation Procedure for Hardware/Software Verification

The objective of this work is two-fold: (1) to build a simple trusted translator from C programs to a hardware description language (in this case Verilog) and (2) to illustrate its application to the formal verification of hardware and software systems using highly developed hardware model checking methods. To achieve the first goal, we used the LLVM compiler infrastructure to compile the C pro...

متن کامل

Reverse-Engineering. By: Schwartz, Mathew, Computerworld, 00104841, 11/12/2001, Vol. 35, Issue 46

A process that was originally applied only to hardware, reverse-engineering is now applied to software, databases and even human DNA. Reverse-engineering is especially important with computer hardware and software. Programs are written in a language, say C++ or Java, that's understandable by other programmers. But to run on a computer, they have to be translated by another program, called a com...

متن کامل

Applying Pointer Analysis to the Synthesis of Hardware from C a Dissertation Submitted to the Department of Electrical Engineering of Stanford University in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy

With the advances in Computer Aided Design (CAD) technology, the design of digital circuits is becoming more and more as the development of software. Hardware is modeled using Hardware Description Languages (HDLs) very much as software is described using programming languages. Synthesis tools are used like compilers to map these HDL models into hardware. However, modern systems, which consist o...

متن کامل

sc2 C-to-FPGA Compiler

sc2 is a new, open source implementation of the Streams-C language and compiler [1] that uses the Stanford SUIF 1.3 compiler infrastructure [2]. sc2 has been improved through various standard compiler optimizations and retargetted to Xilinx Virtex technology. The sc2 compiler passes are freely available for non-commercial use in source form from Los Alamos National Laboratory. Please refer to t...

متن کامل

Automated Generation of Hardware Accelerators From Standard C

Methodologies for synthesis of stand-alone hardware modules from C/C++-based languages have been gaining adoption for embedded system design as an essential means to stay ahead of increasing performance, complexity, and time-to-market demands. However, using C to generate stand-alone blocks does not allow for truly seamless unification of embedded software and hardware development flows. This p...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000